﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://www.utillity.com/schemas/rave/v1/Job" elementFormDefault="qualified" targetNamespace="http://www.utillity.com/schemas/rave/v1/Job" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="Job" type="tns:Job" />
  <xs:complexType name="Job">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="Template" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" default="false" name="SaveMergedOutput" type="xs:boolean" />
      <xs:element minOccurs="0" maxOccurs="1" default="Off" name="LogLevel" type="tns:SourceLevels" />
      <xs:element minOccurs="0" maxOccurs="1" name="MergeVariables" type="tns:ArrayOfChoice3" />
    </xs:sequence>
    <xs:attribute default="true" name="validateAfterMerge" type="xs:boolean" />
    <xs:attribute default="UTF-8" name="templateEncoding" type="xs:string" />
  </xs:complexType>
  <xs:simpleType name="SourceLevels">
    <xs:list>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Off" />
          <xs:enumeration value="Critical" />
          <xs:enumeration value="Error" />
          <xs:enumeration value="Warning" />
          <xs:enumeration value="Information" />
          <xs:enumeration value="Verbose" />
          <xs:enumeration value="ActivityTracing" />
          <xs:enumeration value="All" />
        </xs:restriction>
      </xs:simpleType>
    </xs:list>
  </xs:simpleType>
  <xs:complexType name="ArrayOfChoice3">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element minOccurs="1" maxOccurs="1" name="List" nillable="true" type="tns:ListMergeVariable" />
      <xs:element minOccurs="1" maxOccurs="1" name="Setting" nillable="true" type="tns:MergeVariable" />
    </xs:choice>
  </xs:complexType>
  <xs:complexType name="ListMergeVariable">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:MergeVariable">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="Values" type="tns:ArrayOfString" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="MergeVariable">
    <xs:attribute name="key" type="xs:string" />
    <xs:attribute name="value" type="xs:string" />
  </xs:complexType>
  <xs:complexType name="ArrayOfString">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Value" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
</xs:schema>